\section{Test cases}\label{testing}
\subsection{Client}\label{testing-client}
\subsubsection{Download server does not exist}
The cause:
\begin{enumerate}
	\item Bad download server binding name
	\item Service does not exist 
\end{enumerate}
The response:
\begin{enumerate}
	\item Program terminates
\end{enumerate}

\subsubsection{Download server response timeout}
The cause:
\begin{enumerate}
	\item Download server crashed
	\item Network problem
\end{enumerate}
The response:
\begin{enumerate}
	\item Try resend the request
\end{enumerate}

\subsubsection{Download server connection exception}
The cause:
\begin{enumerate}
	\item Download server crashed
	\item Network problem
\end{enumerate}
The response:
\begin{enumerate}
	\item Try resend the request
\end{enumerate}
\subsection{Download Server}\label{testing-dserver}
\subsubsection{File server does not respond}
The cause:
\begin{enumerate}
	\item Network problem
\end{enumerate}
The response:
\begin{enumerate}
	\item Ignore it, check other File servers
\end{enumerate}

\subsubsection{Response connection exception}
The cause:
\begin{enumerate}
	\item File server crashed
	\item Network problems
\end{enumerate}
The response:
\begin{enumerate}
	\item Ignore it
\end{enumerate}

\subsection{File server}\label{testing-fserver}
\subsubsection{Download server connection exception}
The cause:
\begin{enumerate}
	\item (when sending back an answer) Download server crashed
	\item Network problems
\end{enumerate}
The response:
\begin{enumerate}
	\item Ignore it
\end{enumerate}
